package com.youmu.sichuansfc.domain;

import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Date;
import java.util.Objects;

@Entity
@Table(name = "youmu_fund_manager", schema = "youmu", catalog = "")
public class YoumuFundManager {
    private Long id;
    private Timestamp addTime;
    private Integer status;
    private String managerName;
    private Integer fundCount;
    private Date fundTime;
    private Double managerMoney;
    private Date chinaRegisterTime;
    private String contactName;
    private Double paidMoney;
    private Double registerMoney;
    private String contactTel;
    private Integer investType;
    private String contactEmail;
    private Boolean stateCapital;
    private Boolean governmentFund;
    private String regLocProvince;
    private String comLocProvince;
    private String regLocCity;
    private String comLocCity;
    private String regLocZone;
    private String comLocZone;
    private String regLocDetail;
    private String comLocDetail;
    private Long fundUserId;
    private Integer updateCount;
    private Boolean isDelete;
    private String corporation;
    private Boolean stateHolding;
    private Long parentId;
    private String fundPark;
    private int dataStatus;
    private int dataType;


    public void setId(long id) {
        this.id = id;
    }

    public void setFundUserId(long fundUserId) {
        this.fundUserId = fundUserId;
    }

    public void setUpdateCount(int updateCount) {
        this.updateCount = updateCount;
    }

    @Id
    @Column(name = "id")
    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    @Basic
    @Column(name = "add_time")
    public Timestamp getAddTime() {
        return addTime;
    }

    public void setAddTime(Timestamp addTime) {
        this.addTime = addTime;
    }

    @Basic
    @Column(name = "status")
    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Basic
    @Column(name = "manager_name")
    public String getManagerName() {
        return managerName;
    }

    public void setManagerName(String managerName) {
        this.managerName = managerName;
    }

    @Basic
    @Column(name = "fund_count")
    public Integer getFundCount() {
        return fundCount;
    }

    public void setFundCount(Integer fundCount) {
        this.fundCount = fundCount;
    }

    @Basic
    @Column(name = "fund_time")
    public Date getFundTime() {
        return fundTime;
    }

    public void setFundTime(Date fundTime) {
        this.fundTime = fundTime;
    }

    @Basic
    @Column(name = "manager_money")
    public Double getManagerMoney() {
        return managerMoney;
    }

    public void setManagerMoney(Double managerMoney) {
        this.managerMoney = managerMoney;
    }

    @Basic
    @Column(name = "china_register_time")
    public Date getChinaRegisterTime() {
        return chinaRegisterTime;
    }

    public void setChinaRegisterTime(Date chinaRegisterTime) {
        this.chinaRegisterTime = chinaRegisterTime;
    }

    @Basic
    @Column(name = "contact_name")
    public String getContactName() {
        return contactName;
    }

    public void setContactName(String contactName) {
        this.contactName = contactName;
    }

    @Basic
    @Column(name = "paid_money")
    public Double getPaidMoney() {
        return paidMoney;
    }

    public void setPaidMoney(Double paidMoney) {
        this.paidMoney = paidMoney;
    }

    @Basic
    @Column(name = "register_money")
    public Double getRegisterMoney() {
        return registerMoney;
    }

    public void setRegisterMoney(Double registerMoney) {
        this.registerMoney = registerMoney;
    }

    @Basic
    @Column(name = "contact_tel")
    public String getContactTel() {
        return contactTel;
    }

    public void setContactTel(String contactTel) {
        this.contactTel = contactTel;
    }

    @Basic
    @Column(name = "invest_type")
    public Integer getInvestType() {
        return investType;
    }

    public void setInvestType(Integer investType) {
        this.investType = investType;
    }

    @Basic
    @Column(name = "contact_email")
    public String getContactEmail() {
        return contactEmail;
    }

    public void setContactEmail(String contactEmail) {
        this.contactEmail = contactEmail;
    }

    @Basic
    @Column(name = "state_capital")
    public Boolean getStateCapital() {
        return stateCapital;
    }

    public void setStateCapital(Boolean stateCapital) {
        this.stateCapital = stateCapital;
    }

    @Basic
    @Column(name = "government_fund")
    public Boolean getGovernmentFund() {
        return governmentFund;
    }

    public void setGovernmentFund(Boolean governmentFund) {
        this.governmentFund = governmentFund;
    }

    @Basic
    @Column(name = "reg_loc_province")
    public String getRegLocProvince() {
        return regLocProvince;
    }

    public void setRegLocProvince(String regLocProvince) {
        this.regLocProvince = regLocProvince;
    }

    @Basic
    @Column(name = "com_loc_province")
    public String getComLocProvince() {
        return comLocProvince;
    }

    public void setComLocProvince(String comLocProvince) {
        this.comLocProvince = comLocProvince;
    }

    @Basic
    @Column(name = "reg_loc_city")
    public String getRegLocCity() {
        return regLocCity;
    }

    public void setRegLocCity(String regLocCity) {
        this.regLocCity = regLocCity;
    }

    @Basic
    @Column(name = "com_loc_city")
    public String getComLocCity() {
        return comLocCity;
    }

    public void setComLocCity(String comLocCity) {
        this.comLocCity = comLocCity;
    }

    @Basic
    @Column(name = "reg_loc_zone")
    public String getRegLocZone() {
        return regLocZone;
    }

    public void setRegLocZone(String regLocZone) {
        this.regLocZone = regLocZone;
    }

    @Basic
    @Column(name = "com_loc_zone")
    public String getComLocZone() {
        return comLocZone;
    }

    public void setComLocZone(String comLocZone) {
        this.comLocZone = comLocZone;
    }

    @Basic
    @Column(name = "reg_loc_detail")
    public String getRegLocDetail() {
        return regLocDetail;
    }

    public void setRegLocDetail(String regLocDetail) {
        this.regLocDetail = regLocDetail;
    }

    @Basic
    @Column(name = "com_loc_detail")
    public String getComLocDetail() {
        return comLocDetail;
    }

    public void setComLocDetail(String comLocDetail) {
        this.comLocDetail = comLocDetail;
    }

    @Basic
    @Column(name = "fund_user_id")
    public Long getFundUserId() {
        return fundUserId;
    }

    public void setFundUserId(Long fundUserId) {
        this.fundUserId = fundUserId;
    }

    @Basic
    @Column(name = "update_count")
    public Integer getUpdateCount() {
        return updateCount;
    }

    public void setUpdateCount(Integer updateCount) {
        this.updateCount = updateCount;
    }

    @Basic
    @Column(name = "is_delete")
    public Boolean getIsDelete() {
        return isDelete;
    }

    public void setIsDelete(Boolean delete) {
        isDelete = delete;
    }

    @Basic
    @Column(name = "corporation")
    public String getCorporation() {
        return corporation;
    }

    public void setCorporation(String corporation) {
        this.corporation = corporation;
    }

    @Basic
    @Column(name = "state_holding")
    public Boolean getStateHolding() {
        return stateHolding;
    }

    public void setStateHolding(Boolean stateHolding) {
        this.stateHolding = stateHolding;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        YoumuFundManager that = (YoumuFundManager) o;
        return id == that.id &&
                fundUserId == that.fundUserId &&
                updateCount == that.updateCount &&
                isDelete == that.isDelete &&
                Objects.equals(addTime, that.addTime) &&
                Objects.equals(status, that.status) &&
                Objects.equals(managerName, that.managerName) &&
                Objects.equals(fundCount, that.fundCount) &&
                Objects.equals(fundTime, that.fundTime) &&
                Objects.equals(managerMoney, that.managerMoney) &&
                Objects.equals(chinaRegisterTime, that.chinaRegisterTime) &&
                Objects.equals(contactName, that.contactName) &&
                Objects.equals(paidMoney, that.paidMoney) &&
                Objects.equals(registerMoney, that.registerMoney) &&
                Objects.equals(contactTel, that.contactTel) &&
                Objects.equals(investType, that.investType) &&
                Objects.equals(contactEmail, that.contactEmail) &&
                Objects.equals(stateCapital, that.stateCapital) &&
                Objects.equals(governmentFund, that.governmentFund) &&
                Objects.equals(regLocProvince, that.regLocProvince) &&
                Objects.equals(comLocProvince, that.comLocProvince) &&
                Objects.equals(regLocCity, that.regLocCity) &&
                Objects.equals(comLocCity, that.comLocCity) &&
                Objects.equals(regLocZone, that.regLocZone) &&
                Objects.equals(comLocZone, that.comLocZone) &&
                Objects.equals(regLocDetail, that.regLocDetail) &&
                Objects.equals(comLocDetail, that.comLocDetail) &&
                Objects.equals(corporation, that.corporation) &&
                Objects.equals(stateHolding, that.stateHolding);
    }

    @Override
    public int hashCode() {

        return Objects.hash(id, addTime, status, managerName, fundCount, fundTime, managerMoney, chinaRegisterTime, contactName, paidMoney, registerMoney, contactTel, investType, contactEmail, stateCapital, governmentFund, regLocProvince, comLocProvince, regLocCity, comLocCity, regLocZone, comLocZone, regLocDetail, comLocDetail, fundUserId, updateCount, isDelete, corporation, stateHolding);
    }

    @Basic
    @Column(name = "parent_id")
    public Long getParentId() {
        return parentId;
    }

    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    @Basic
    @Column(name = "fund_park")
    public String getFundPark() {
        return fundPark;
    }

    public void setFundPark(String fundPark) {
        this.fundPark = fundPark;
    }

    @Basic
    @Column(name = "data_status")
    public int getDataStatus() {
        return dataStatus;
    }

    public void setDataStatus(int dataStatus) {
        this.dataStatus = dataStatus;
    }

    @Basic
    @Column(name = "data_type")
    public int getDataType() {
        return dataType;
    }

    public void setDataType(int dataType) {
        this.dataType = dataType;
    }
}
